第二个视图控制器如何获取第一个视图控制器的部分信息?
例如 :第二个界面中的lable显示第一个界面textField中的文本,这可以使用互属性传值进行实现。
页面间传值主要有以下几种:属性、Closure、单例、代理、通知,下面我们先来了解属性传值。
属性传值的实现思路如下:
|
|
下面我们就以让第二个界面中的 lable 显示第一个界面 textField 中的文本这个功能为例,了解属性传值的具体实现。首先创建一个 RootViewController 和一个 DetailViewController,在 DetailViewController 中声明一个 textString 属性,用于接收传过来的字符串:
|
|
同时创建一个 Lable 用来显示传过的字符串:
|
|
下面我们回到 RootViewController 中,给 RootViewController 声明一个全局属性textField :
|
|
然后给 RootViewController 添加一个手势和一个按钮,手势用来轻触任意位置,收回键盘第一响应,按钮用来转跳到 DetailViewController 并传值:
|
|
下面实现两个对应的方法:
|
|
这样我们就利用属性传值的方式,实现让第二个界面中的 lable 显示第一个界面 textField 中的文本。